龙芯杯系统能力竞赛CPU赛道参赛准备 您所在的位置:网站首页 龙芯 计算机系统能力 龙芯杯系统能力竞赛CPU赛道参赛准备

龙芯杯系统能力竞赛CPU赛道参赛准备

2024-07-10 16:54| 来源: 网络整理| 查看: 265

前言:

本人系2021级小白,电子信息类学生,学校有芯片设计实验班——龙芯班然后我就加入了成为龙芯班第三届学员。学习完成加法器状态机等之后就开始跟着《自己动手写CPU》雷思磊著,此后都是跟着这本书在学。学期末的时候到第四章。寒假1月完成所有指令。2月完成中断。本来打算做功能测试的,但是不会做卡住了,一直卡到4月(其实摸鱼了)

# 开始功能测试: 1.看相关文件,学习怎么做:

大量找资料,以下可供参考:

大赛包所有文件看一次 龙芯班学长录的视频:自己动手写CPU之后快速上手功能测试_哔哩哔哩_bilibili 龙芯官方录的视频:NSCSCC2019 第一次线上培训_哔哩哔哩_bilibili (推荐大家看2019年的因为20年讲的没有19年全) 历届龙芯杯培训视频_哔哩哔哩_bilibili

在做的过程中也遇到好多问题,然后就疯狂上网找...还有找到一些,我觉得挺有用的。有时候,就算这些文档没有帮到你,但是你看着全网有这么多人和你一起,为它欢喜为它愁,有时候还挺感动的...

(6条消息) 龙芯比赛vivado调试试错手记_zerolord的博客-CSDN博客_vivado断点调试 封装SRAM-SOC - 重庆大学硬件综合设计实验文档 (cqu.ai) 单周期cpu功能测试 - 计算机设计与实践(2020春季) | 哈工大(深圳) (gitee.io)(这个就浅浅参考一下就可,与龙芯杯的有好几处不太相符,毕竟人家只是自己学校用) 2.改接口

先弄sram接口吧,从里面可以看到它的顶层模块有这样的接口,我们要不就改以前的openmips,要不就重写...

openmips.v作为cpu的顶层模块,按照龙芯杯的命名结构应该叫mycpu_top.v(是错的!应该是openmips_min_sopc.v)

由于我太菜了不会写,所以我还是改吧

 通过观察和浅浅联想一下,我们不难发现 inst_sram和rom有关,然后data_sram和ram有关,然后具体每个接口是什么意思我们参考网上大佬的帖子(重大那个)知道了,然后我就拿我的openmips.v一顿猛改(其实是运行的时候报错找到的),下图为不完全统计(∩_∩)

这些改完后,暂时是这看大佬帖子以后才知道是抽出回写阶段的结果用来trace比对的,那就接吧,但是我不会接.....

认真思考,把回写阶段的慢慢引出来,但是我发现!

寄存器写使能的接口debug_wb_rf_wen是4位,但是跟着雷思磊的我们的mycpu的接口是1位!

然后我去问了学长(感谢左学长!!!!开学了一定请他吃饭!!!!多次麻烦他了!!!)

 

在mycpu_top.v模块增加(我后来又改了....见后文)

小tips:    这里再说一下,还是推荐用git对代码实行跟踪,这样你改的话也知道自己改了哪里,还可以回退到上一个版本,毕竟是试错。。。(说实话我以前从来不用,但是做到这一块突然觉得还是



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有